<?php
namespace app\admin\traits;
use think\Db;
trait Uuid {
  /**
   * MySQL 实现了 UUID，并且提供 UUID() 函数方便用户生成 UUID。
   * 在 MySQL 的 UUID() 函数中:
   * 前三组数字从时间戳中生成，
   * 第四组数字暂时保持时间戳的唯一性，
   * 第五组数字是一个 IEEE 802 节点标点值，保证空间唯一。
   *
   * @return void
   */
  function uuid() {
    $uuid = Db::query('select uuid() as uuid;');
    return empty($uuid) ? false : $uuid[0]['uuid'];
  }
  /**
   * MySQL 5.1 之后的版本，提供 UUID_SHORT() 函数，生成一个 64 位无符号整数。
   *
   * @return void
   */
  function uuid_short() {
    $uuid_short = Db::query('select uuid_short() as uuid_short;');
    return empty($uuid_short) ? false : $uuid_short[0]['uuid_short'];
  }
}